<h3>Description</h3>
<p>
DCOracle2 is a replacement for DCOracle, written
primarily in C.  DCOracle 1 uses OCI 7 bindings
for most Oracle calls, with OCI 8 mixed in for LOB
support.  Oracle 8i disallows mixing of calls
within a statement, and so breaks LOB support.
DCO2 uses entirely OCI 8 calls, and thus
can use LOBs.
</p>

<h3>New in this Release</h3>
<dl compact>
<dt>Beta 3</dt>
<dd> Fixed IN OUT bind widths.  Added ORACLE8i define to NT build for SPs.  Added Z Oracle Stored Procedure objects to ZOracleDA.  Format conversion on IN/OUT binds for SQLT_NUM. Other small changes (see CHANGELOG)</dd>
<dt>Beta 2</dt>
<dd> Fix ZOracleDA attempting to fetch on non-select.  Add explicit C Cursor.close() to break cycle allowing cursor to be deallocated.  Change fetchmany() and fetchall() to return None if no results remain rather than [].  Several
connection/cursor and cursor/procedure cycle deferring actions.  SPARC byteorder
fixes for stored procedures.  </dd>
<dt>Beta 1</dt>
<dd>Stored procedure input works properly, cycles in stored procedures removed.
Stored procedures now have meaningful docstrings (describing their parameters).
Type coercion change from a tuple kludge to a TypeCoercion object.  Set ability
(and default) to do static binding for BindingArrays, working around dynamic
fetch occasional NULL bug on Linux.  Batch executemany().  Add backward
compatable dbiRaw and execute modes.</dd>
<dt>Alpha 6</dt>
<dd>Nested Cursors, e.g. <tt>SELECT ENAME, CURSOR(SELECT ENAME FROM EMP WHERE
MGR=7908) FROM EMP WHERE EMPNO=7908)</tt>.  API 2.0 type objects. Add
trim() to LobLocators.  Wrap LOB permissions for Zope in ZOracleDA. Change
result on execute w/o results to None, not []. Return statement type code after
execute().</dd>
<dt>Alpha 5</dt>
<dd>Stored procedure fixes, and debugging enhancements.</dd>
<dt>Alpha 4</dt>
<dd>Stored procedure IN/OUT variables, changes to executemany()</dd>
<dt>Alpha 3</dt>
<dd>Changed ZOracleDA to not use method call to connect().  Partial
stored procedure work</dd>
<dt>Alpha 2</dt>
<dd>Bug fixes, largely packaging, from Alpha 1.  Added SQLT_AFC handler,
SPARC alignment fixes.</dd>
<dt>Alpha 1</dt>
<dd>First www.zope.org release</dd>
</dl>

<h3>Contents</h3>
<p>
This release contains both DCOracle2 and a slightly
modified ZOracleDA; it will register as ZOracleDA
would (to silently upgrade Oracle connections) and
thus cannot be run concurrently with ZOracleDA/DCOracle.
</p>

<h3>Installation</h3>
<p>
To replace ZOracleDA, untar into lib/python/Products
and make, move ZOracleDA out of lib/python/Products,
and rename lib/python/Products/DCO2 to lib/python/Products/ZOracleDA.
</p>

<h3>Usage</h3>
<p>
This release is intended for testing with ZOracleDA
feature compatibility (including LOB support) and is also
intended for general use.
</p>

<h3>Platforms</h3>
<p>
NT support has been tested, Microsoft Visual Studio 
project files are included; this has only
received testing with Oracle 8.0 and Oracle 8.1
on Linux, Solaris, and Windows NT; a wider variety of platform experience
is welcomed.
</p>

<h3>Download</h3>
<p>
The product is available at
<a href="http://www.zope.org/Members/matt/dco2">http://www.zope.org/Members/matt/dco2</a>.
</p>

<p><a href="mailto:matt@digicool.com">Matt Kromer</a></p>
